package br.com.orion.sga.model.entities;

// Generated Jul 19, 2014 6:45:05 PM by Hibernate Tools 3.4.0.CR1

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * ParcelaPagamento generated by hbm2java
 */
@Entity
@Table(name = "parcela_pagamento", catalog = "sga")
public class ParcelaPagamento implements java.io.Serializable {

	private long id;
	private PagamentoCartao pagamentoCartao;
	private Date vencimento;
	private float valor;

	public ParcelaPagamento() {
	}

	public ParcelaPagamento(long id, PagamentoCartao pagamentoCartao,
			Date vencimento, float valor) {
		this.id = id;
		this.pagamentoCartao = pagamentoCartao;
		this.vencimento = vencimento;
		this.valor = valor;
	}

	@Id
	@Column(name = "id", unique = true, nullable = false)
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	public long getId() {
		return this.id;
	}

	public void setId(long id) {
		this.id = id;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "id_pagamento_cartao", nullable = false)
	public PagamentoCartao getPagamentoCartao() {
		return this.pagamentoCartao;
	}

	public void setPagamentoCartao(PagamentoCartao pagamentoCartao) {
		this.pagamentoCartao = pagamentoCartao;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "vencimento", nullable = false, length = 0)
	public Date getVencimento() {
		return this.vencimento;
	}

	public void setVencimento(Date vencimento) {
		this.vencimento = vencimento;
	}

	@Column(name = "valor", nullable = false, precision = 12, scale = 0)
	public float getValor() {
		return this.valor;
	}

	public void setValor(float valor) {
		this.valor = valor;
	}

}
